﻿using System;
using System.Linq.Expressions;
using System.Collections.Generic;
using System.Data.Entity;
namespace dominioEFprueba
{
    public interface IRepositorio<T,U>
        where T: class
        where U: DbContext
    {
        U contexto { get; set; }
        void actualizar(T entidad);
        void borrar(T entidad);
        void insertar(T entidad, Type[] clasesGuardar);
        void insertarTodo(T entidad);
        IEnumerable<T> listarTodo();
        T obtenerPorId(object id);
        IEnumerable<T> buscar(Expression<Func<T, bool>> expresion);
        IEnumerable<T> buscar(Expression<Func<T, bool>> expresion, string path);
    }        
}
